var person = "cml";
var personalSet = {
	zyy: [
		{
			x1: 547,
			y1: 1186,
			x2: 1028,
			y2: 1431,
		},
		{
			x1: 243,
			y1: 1542,
			x2: 837,
			y2: 1707,
		},
	],
	cml: [
		{
			x1: 547,
			y1: 1216,
			x2: 1028,
			y2: 1461,
		},
		{
			x1: 243,
			y1: 1572,
			x2: 837,
			y2: 1737,
		},
	],
};

// 程序启动
function setUp() {
	// 程序启动
	auto.waitFor();
	console.show(); // 打开控制台
	log("         淘宝刷能量\n仙女明利私人定制专属版"); // 欢迎信息
	toast("         淘宝刷能量\n仙女明利私人定制专属版"); // 欢迎信息
	app.launch("com.taobao.taobao"); // 启动淘宝
	sleep(2000);
}

// 准备活动
function init() {
	// 进入活动页面
	{
		// 进入首页 然后点击按钮
		if (text("首页").findOne(50000)) {
			// findOne 阻塞式等待淘宝主页启动完成
			sleep(3000); // 直接点会没反应，得再等一会儿
			// 等了一秒以后开始点击入口
			log("点击入口"); // 输出提示信息
			// 长按直至触发跳转
			longClick(
				(personalSet[person][0].x1 + personalSet[person][0].x2) / 2,
				(personalSet[person][0].y1 + personalSet[person][0].y2) / 2
			);
		} else {
			toast("等了十秒还没出现首页，异常\n程序终止");
			console.error("等了十秒还没出现首页，异常\n程序终止");
			end();
		}
	}
	// 打开任务面板
	{
		toastLog("加载中");
		if (textContains("兑换").findOne(20000)) {
			toastLog("加载完毕，点击做任务兑好礼");
			sleep(5000); // 直接点会没反应，得再等一会儿
			// 点按 做任务兑好礼
			click(
				(personalSet[person][1].x1 + personalSet[person][1].x2) / 2,
				(personalSet[person][1].y1 + personalSet[person][1].y2) / 2
			);
		} else {
			toast(
				'您加载的好慢哦\n如果成功进入活动界面，请您自己按一下"做任务兑好礼"'
			);
		}
	}
}

// 开始刷
function run() {
	while (true) {
		if (!!(uc = textContains("浏览15秒得").findOne(6000))) {
			// 进入任务
			{
				sleep(600);
				uc.click();
			}
			// 等待加载完毕
			{
				while (true) {
					toastLog("\n检验是否开始...");
					log('Search for "浏览店铺"');
					if (className("android.view.View").desc(" 浏览店铺").findOne(500)) {
						break;
					}
					if (
						className("android.view.View").textContains("浏览店铺").findOne(500)
					) {
						break;
					}
					log('Search for "滑动浏览得奖励"');
					if (
						className("android.view.View").textContains("滑动浏览").findOne(500)
					) {
						break;
					}
					if (
						className("android.view.View").desc(" 滑动浏览得奖励").findOne(500)
					) {
						break;
					}
				}
			}
			// 开始模拟上下滑动
			{
				sleep(600);
				swipe(
					device.width / 2,
					device.height / 3,
					device.width / 2,
					(2 * device.height) / 3,
					800
				);
				sleep(600);
				swipe(
					device.width / 2,
					(2 * device.height) / 3,
					device.width / 2,
					device.height / 3,
					800
				);
			}
			// 等待计时完成
			{
				toastLog("原地等待任务完成");
				var cnt = 0;
				while (true) {
					cnt += 2;
					toastLog("正在等待任务完成：" + cnt);
					if (className("android.view.View").desc(" 任务完成").findOne(1062))
						break;
					if (className("android.view.View").text("任务已完成").findOne(1062))
						break;
					if (cnt > 14) break;
				}
				toastLog("任务已完成 ヾ(^▽^*)))");
			}
			// 模拟按键返回
			{
				sleep(2000);
				back();
			}
		} else {
			log("找不到能浏览十五秒的任务");
			end();
		}
		// 开始刷：读取任务列表并执行
		// textContains("立即前往得")
		// 	.find()
		// 	.forEach((ui) => {
		// 		log('点击 "立即前往得..." ');
		// 		sleep(2000);
		// 		ui.click();
		// 		log("等待5秒加载");
		// 		sleep(10000);
		// 		log("点击返回");
		// 		// 点击左上角返回
		// 		// click((21 + 87) / 2, (93 + 189) / 2);
		// 		// 模拟按键返回
		// 		back();
		// 	});
	}
}

// 程序结束退出
function end() {
	// 程序结束退出
	// shell("am kill --user current com.taobao.taobao", false);
	// app.launchApp("Auto.js");
	sleep(3000);
	console.hide();
	home();
	exit();
}

setUp();
// init();
run();
end();
